1. Field of the Invention
The present invention relates generally to voice over packet network. More particularly, the present invention relates to utilizing modems to implement call forwarding and three-way calling features for VoIP applications.
2. Background Art
Voice over Internet Protocol (or VoIP), also known as IP Telephony, Internet telephony and Digital Phone, is a technology for the routing of voice conversations over the Internet or any other packet-based network. The voice data flows over a general-purpose packet-switched network, instead of traditional dedicated, circuit-switched voice transmission lines. In addition to providing an alternative for voice conversations over the traditional phone networks, VoIP can also facilitate tasks that are difficult to achieve using the traditional phone networks. For example, incoming phone calls can be automatically routed to VoIP applications or phones, irrespective of where the user is connected to the network. As another example, VoIP applications or phones can integrate with other services available over the Internet, such as video conversation, message or data file exchange in parallel with the conversation, audio conferencing, managing address books and passing information about whether others (e.g. friends or colleagues) are available online to interested parties.
Today, VoIP providers are increasingly taking market shares away from the providers of traditional circuit-switched voice transmission lines. For example, standalone VoIP phone service providers, such as Vonage Corporation use an existing high-speed Internet connection to make and receive phone calls worldwide with a touch-tone telephone as a feature-rich and cost effective alternative to traditional telephony services. Also, PC-centric VoIP providers, such as Skype Technologies, enable PC users to make and receive telephone calls through their PCs.
FIG. 1 illustrates conventional VoIP system 100, which includes packet network 130 at its core for facilitating communications between first computer 110 and second computer 150, where the computers can be standalone VoIP devices or PC-centric VoIP applications, and the like. As shown, first speech encoder/decoder 120 is located in first computer 110 and interposed between first VoIP application 115 and packet network 130, and second speech encoder/decoder 140 is located in second computer 150 and interposed between second VoIP application 155 and packet network 130. Each of first speech encoder/decoder 120 and second speech encoder/decoder 140 performs the tasks of receiving a speech signal from its corresponding user device, digitizing the speech signal, encoding or compressing the digitized speech signal, packetizing the compressed speech signal and transmitting speech packets over packet network 130 in one direction, and in the other direction, receiving speech packets over packet network 130, depacketizing the compressed speech signal, decoding or decompressing the depacketized speech signal to retrieve the digitized speech signal to regenerate the speech signal and transmitting the speech signal to its corresponding user device.
Conventionally, first computer 110 and second computer 150 also include first VoIP application 115 and second VoIP application 155, respectively. For example, first VoIP application 115 is loaded into a memory of first computer 110 and is used as an interface to first speech encoder/decoder 120 and first computer audio subsystem 116, where first computer audio subsystem 116 communicates with first computer microphone 101 and first computer speaker 102. Similarly, second VoIP application 155 is loaded into a memory of second computer 150 and is used as an interface to second speech encoder/decoder 140 and second computer audio subsystem 156, where second computer audio subsystem 156 communicates with second computer microphone 151 and first computer speaker 152. First VoIP application 115 may include (a) a voice processing module, which prepares voice samples for transmission over packet network 130, which may run on a DSP; (b) a call processing (or signaling) module, which allows calls to be established across packet network 130; (c) a packet processing module, which processes voice and signaling packets, adding the appropriate transport headers prior to submitting the packets to packet network 130; and (d) a network management module, which provides management agent functionality, allowing remote fault, accounting, and configuration management to be performed from standard management systems, and may include ancillary services such as support for security features, access to dialing directories, and remote access support.
Today, conventional VoIP applications provide a call forwarding feature to forward a VoIP call to a user's phone, such as a cell phone, over a PSTN phone line, when the user is unable to answer the VoIP call using its VoIP terminal. However, the VoIP providers offer such call forwarding feature to their users at an additional charge, since the VoIP providers incur additional costs for use of the PSTN phone line.
Further, today, conventional VoIP applications provide a three-way calling feature, such that more than two VoIP users can participate during a VoIP call. However, such three-way calling feature requires that all participants to join the VoIP call through their VoIP applications. The conventional VoIP applications offer no solution for a three-way calling when a user has no access to a VoIP terminal. In addition, the three-way calling feature offered by PSTN phone line providers also fails to offer a solution when the participants desire to join a third participant that does not have an access to a PSTN phone line through a cell phone or a wireline phone.
In addition, today, a VoIP application may be used to forward a call originating from a PSTN phone line over the VoIP network. However, in order to connect to a remote VoIP user, the originating user must dial the PSTN phone number for the VoIP application and upon receiving a prompt, send DTMF digits indicative of the remote user's identification number in the VoIP application. However, it is very difficult and impractical for the originating user to memorize each and every identification number associated with remote users in the VoIP application.
Accordingly, there is a strong need in the art to remedy the aforementioned shortcomings, and further facilitate an interconnection between the VoIP network and the PSTN network to provide more features and transparency for the users.